home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / ODF-Interest Archive / July 96 / Re Destroying Proxy Frames.2 < prev    next >
Encoding:
Internet Message Format  |  1996-07-09  |  1.9 KB  |  [TEXT/ttxt]

  1. Subject:     Re: Destroying Proxy Frames
  2. Sent:        7/8/96 1:23 PM
  3. Received:    7/8/96 1:41 PM
  4. From:        Henri Lamiraux, lamiraux@apple.com
  5. Reply-To:    ODF Interest, ODF-Interest@CILabs.ORG
  6. To:          OpenDoc Development Framework Discussion List, ODF-Interest@CILabs.
  7.  
  8. >When a FW_CProxyFrame is destroyed should its fEmbeddedFrame be removed 
  9. >or should it be released if that frame has been detached (fAttached = 
  10. >FALSE)?  Currently my part crashes when the fEmbeddedFrame has been 
  11. >detached and is removed in CProxyFrame's destructor...
  12. >
  13.  
  14. The answer to this question is a little bit complex. There are several 
  15. problems in OpenDoc which make the whole Release vs Remove issue very 
  16. complex to implement. ODF 1 tried to implement the OpenDoc recipes the 
  17. best it could at the time. Since then many problems with InLimbo have 
  18. been discovered in OpenDoc. ODF 2 implements a 'new and improved recipes' 
  19. which should work much better.
  20.  
  21. The value of fAttached is not enough to decide if you need to call 
  22. release or remove. An embedded frame can be detached but being embedded 
  23. in another frame (because you did a cut and paste or a drag/move). 
  24. Calling remove by just testing fAttached is not enough, you might delete 
  25. a frame embedded in another frame. 
  26.  
  27. What's concerning me about your fix is that if fAttached is true then 
  28. inLimbo should be false (an attached embedded frame is not inLimbo). This 
  29. means that you never execute the first if statement and never remove 
  30. unused embedded frames. 
  31.  
  32.  
  33. How do you detach embedded frames? is it the result of an undoable action 
  34. (like cut or drag/move)?
  35.  
  36. ........................................................................
  37.  Henri Lamiraux                                      lamiraux@apple.com
  38.  Apple Computer, Inc.                 OpenDoc(tm) Development Framework
  39. ........................................................................
  40.  
  41.  
  42.